In a distributed computing system, i.e., a computing system that uses multiple nodes to complete various tasks, a specific workload may be executed on differing numbers of nodes, depending, for example, on the resources resident at those nodes, as well as on the demands placed on the workload. For example, a Web server application (workload) may experience an increased demand during the late afternoon/early evening compared to the demand experienced during the early morning. Such a demand increase may dictate use of additional nodes to ensure satisfactory performance of the Web server application. Thus, the number of nodes assignable to the workload may vary during execution of that workload. Currently, assignment of workloads among nodes, or other computing system resource assignment to workloads, is done using manual means; i.e., a computer system user makes the assignments of resources to workloads. These current methods are slow and often result in less than optimum assignment of resources to workloads. Because the current methods are slow, computer systems on which these manual processes are practiced cannot quickly adapt to the frequent changes that occur in resource demand from the workloads.